#ifndef _Gamut_Utils_
#define _Gamut_Utils_

#include <string>
#include <sstream>

namespace Gamut
{
	/**
		\brief converts a string argument to a value of type RT
		\remarks
			example usage: int x = Gamut::argConvert<int>(string);
		\param[in] the_string a value of type std::string
		\return a value of type RT
	*/
	template<typename RT, typename T, typename Trait, typename Alloc>
	RT argConvert(const std::basic_string<T, Trait, Alloc>& the_string)
	{
		std::basic_istringstream< T, Trait, Alloc> temp_ss(the_string);
		RT value;
		temp_ss >> value;
		return value;
	}
}

#endif
